--[[
描述 ： UIEditText控件
作者 ： 付大志
时间 ： 13/08/26
]]
UIEditText = Class(MLView,'UIEditText');


UIEditText.viewCtrl     = nil;      -- 所属viewCtrl
UIEditText.onEditDone   = nil;	    -- 完成代理函数
UIEditText.onEditChange = nil;      -- 编辑代理函数
UIEditText.mWidth       = nil;      -- 宽度
UIEditText.mHeight      = nil;      -- 高度
UIEditText.mTextEdit 	= nil;
UIEditText.mBgImage	 	= nil;		-- 背景图片


function UIEditText:init(width, height, isMultiLine, viewCtrl , id)
  width  = width or UITheme.TEXTFIELD_WIDTH;
  height = height or UITheme.TEXTFIELD_HEIGHT;

  self.id = id;
  	if isMultiLine then
  		self.mBgImage = UIImage.imageName(UITheme.TEXTFIELD_VIEW_BG) ;
  	else
  		self.mBgImage = UIImage.imageName(UITheme.TEXTFIELD_BG) ;
  	end
  self.mWidth       = width;      -- 宽度
  self.mHeight      = height;      -- 高度


  self:initView(width, height, viewCtrl, id);
  
  self.mTextEdit = MLEditView.new():initEdit(width-AW(6), height, isMultiLine,viewCtrl , id)
  if isMultiLine then
  self:add(self.mTextEdit, AW(5), AW(5));
  else
  self:add(self.mTextEdit, AW(5), 0);
  end

  self.mTextEdit.onEditChange = function ( text )
    -- body
    --print('---self.mTextEdit.onEditChange--text==',text);
    if self.onEditChange then
      self.onEditChange(text);
    end
  end

  self.mTextEdit.onEditDone = function (  )
    -- body
    --print('-----self.mTextEdit.onEditDone');
    if self.onEditDone then
      self.onEditDone();
    end
  end
  return self;
end

function UIEditText:draw(  )
  -- body
  if self.mBgImage == nil then
    self:getGraphic():fillRect(0, 0, self.mWidth, self.mHeight, UIColor.COLOR_WHITE, AW(5));
  else
    self:setBg(self.mBgImage);
  end
end

--[[
功能   ： 设置输入类型   默认 全键盘
参数   ： inputType 可输入以下类型
MLEditView.InputNumber      -- 数字
MLEditView.InputDotNum;       -- 小数点数字
MLEditView.InputNumAndChar   -- 数字字母
MLEditView.InputAscii       -- 字母
MLEditView.InputIDCart      -- 身份证
MLEditView.InputMail        -- 邮箱
MLEditView.InputAll        -- 全键盘   
返回   ： 无
]]
function UIEditText:setType(inputType)
  self.mTextEdit:setInputType(inputType);
end

--[[
功能   ： 设置输入框内容
参数   ： text 文本
返回   ： 无
]]
function UIEditText:setText(text)
  self.mTextEdit:setText(text);
end

--[[
功能   ： 获取编辑框内容
参数   ： 无
返回   ： 文本 string类型
]]
function UIEditText:getText()
  local string = self.mTextEdit:getText();
  return string;
end

--[[
功能   ： 设置密码模式
参数   ： 无
返回   ： 无
]]
function UIEditText:setPassword(mPassStyle)
  self.mTextEdit:setPasswordMode(mPassStyle);
end

--[[
功能   ： 设置提示文本
参数   ： text 提示语
返回   ： 无
]]
function UIEditText:setHint(text)
  self.mTextEdit:setHint(text);
end

--[[
功能   ： 设置输入长度
参数   ： length 长度   数字类型
返回   ： 无
]]
function UIEditText:setMaxLength(length)
  self.mTextEdit:setMaxLength(length);
end

--[[
功能   ： 设置文字大小
参数   ： size 大小;建议用AW嵌套使用 例如AW(14)
返回   ： 无
]]
function UIEditText:setTextSize(size)
  self.mTextEdit:setFontSize(size);
end

--[[
功能   ： 设置文字颜色
参数   ： color 颜色值 例如：0x444444
返回   ： 无
]]
function UIEditText:setTextColor(color)
  self.mTextEdit:setTextColor(color);
end

function UIEditText:update()

end
function UIEditText:show()
  self:draw();
end
--[[
功能   ： 暂停 控件被摧毁通知 是在ctrl pause时候的通知
参数   ： 无
返回   ： 无
]]
function UIEditText:onPause()
end

--[[
功能   ： 恢复控件
参数   ： 无
返回   ： 无
]]
function UIEditText:onResume()
end


--[[ 

-----使用方法 V2.0

local edit = UIEditText.new():init(AW(100), AW(40), false, self)
edit.mBgImage   = UIImage.imageName('1.png');    -- 设置背景图片
edit:show();
--]]

